package com.aaa.springboot_rbac.vo;

/**
 * @FileName: TreeNode
 * @Description: vo实体，View Object，视图对象，用于展示层，
 *               它的作用是把某个指定页面（或组件）的所有数据封装起来。
 *              与前端视图模板传来的对象对应。
 *              这里表示的是菜单栏实体结构，前端传来的是树形结构。
 * @Author: 张钰哲
 * @CreateTime: 2025/8/29 15:03
 * @Version: 1.0.0
 */

import lombok.Data;

import java.util.List;

/**
 * DO（Data Object）：此对象与数据库表结构一一对应，通过 DAO层向上传输数据源对象。
 *
 * DTO（Data Transfer Object）：数据传输对象，Service 或Manager 向外传输的对象。
 *
 * BO（Business Object）：业务对象，可以由Service层输出的封装业务逻辑的对象。
 *
 * Query：数据查询对象，各层接收上层的查询请求。注意超过2 个参数的查询封装，禁止使用 Map 类 来传输。
 *
 * VO（View Object）：显示层对象，通常是 Web 向模板渲染引擎层传输的对象。
 *
 */
@Data
public class TreeNode {
    private Integer id;
    //名称
    private String label;
    //父节点ID
    private Integer parentId;
    //url地址
    private String url;
    //图标
    private String icon;
    //孩子集合
    private List<TreeNode> children;
}
